The present invention relates to a substrate transfer controlling apparatus and a substrate transferring method, and more particularly to a substrate transfer controlling apparatus and a substrate transferring method for transferring a plurality of substrates in a substrate processing apparatus such as a semiconductor fabrication apparatus, with a transfer device, successively to a plurality of processing devices for processing the substrates therein. The present invention also relates to a substrate processing apparatus in which the transfer of substrates is controlled by such a substrate transfer controlling apparatus.
There are various types of configurations in semiconductor fabrication apparatus. Generally, there have been used many semiconductor fabrication apparatus which are arranged such that a plurality of semiconductor substrates (wafers) are successively introduced from a cassette, and transferred between a plurality of processing devices by a plurality of transfer devices and processed concurrently thereby, and the substrates that have been processed are returned to the cassette. There have been known other semiconductor fabrication apparatus in which a plurality of cassettes can be mounted and replaced. Such semiconductor fabrication apparatus are continuously operable by replacing a cassette loaded with processed substrates with a cassette loaded with unprocessed substrates. Operation of these semiconductor fabrication apparatus, particularly the transfer devices, is controlled by a substrate transfer controlling apparatus.
A typical control process in a conventional substrate transfer controlling apparatus will briefly be described below.
The conventional substrate transfer controlling apparatus is continuously supplied with the statuses of transfer devices which are being controlled thereby. Based on the supplied statuses of the transfer devices, the substrate transfer controlling apparatus detects any transfer devices that are not in operation, i.e., any inoperative transfer devices. If the substrate transfer controlling apparatus detects any inoperative transfer devices, then it inspects, with respect to each of the inoperative transfer devices, whether there is a processed substrate in a processing device as a transfer source, whether there is an empty arm of the transfer device for receiving a substrate, and whether there is an empty processing device as a transfer destination. Then, the substrate transfer controlling apparatus determines all possible actions. Subsequently, with respect to each of the inoperative transfer devices where possible actions are present, the substrate transfer controlling apparatus determines an action to be performed next, and transmits a command for carrying out the action to the corresponding transfer device. In response to the received command, the inoperative transfer device starts the next action.
Specifically, if the substrate transfer controlling apparatus detects that the transfer device is inoperative at each point of time in the operation of the semiconductor fabrication apparatus, then the substrate transfer controlling apparatus determines whether or not a condition for carrying out a certain action to be done (operable condition) is satisfied. If there are any actions that satisfy the condition, then the substrate transfer controlling apparatus selects an action of highest priority and instructs the transfer device to perform the selected action.
The substrate transfer controlling apparatus repeats the above process to control the transfer of substrates in the semiconductor fabrication apparatus.
With the conventional substrate transfer controlling apparatus, only when the operable condition is satisfied, the inoperative transfer device moves from the present position to the position of a processing device where a substrate is to be delivered or received. Specifically, even when the transfer device is inoperative, since it cannot move before the operable condition is satisfied, the throughput of the semiconductor fabrication apparatus tends to decrease.
One solution is to modify the operable condition as much as possible to allow each transfer device to start moving early by predicting the processing end time in a processing device as a transfer source. Even if the operable condition is thus modified, since next actions are successively determined, when a plurality of substrates are successively processed, the time for the final substrate to be returned to the cassette after it has fully been processed is liable to be later than a logically possible value (earliest time).
Furthermore, from the viewpoint of process, semiconductor fabrication apparatus are generally desired to transfer a substrate which has been processed in a processing device promptly to a next processing device (the immediacy is required for the semiconductor fabrication apparatus). For example, when a substrate is plated, the plated substrate needs to be transferred immediately to a next processing device and post-processed for cleaning or the like because if the plated substrate were left as it is, it would be lowered in quality due to oxidization or the like. Specifically, a certain constraint relative to the time to operate a transfer device (in the above example, a condition that the waiting time of a processed substrate for a transfer device is zero) may be required.
However, in the conventional substrate transfer controlling apparatus, even if an operable condition with respect to an action of high priority is satisfied, the transfer device cannot immediately perform the action as long as the transfer device is in operation. Therefore, the conventional substrate transfer controlling apparatus cannot control the transfer of substrates in consideration of constraints relative to the time to operate a transfer device.
Consequently, it is necessary to conduct an advance simulation prior to operation of the semiconductor fabrication apparatus to confirm whether it is possible to perform a control process satisfying such a constraint. However, such a process is tedious and time-consuming. Alternatively, it is necessary to pose a limitation on an expected processing time for each type of processing device in order to satisfy a constraint relative to the time to operate a transfer device. Further, the demand for immediacy of operation of the transfer device cannot accordingly be met in some cases, thereby leading to a reduction in quality and yield. Alternatively, it is necessary to arrange a post-processing device which requires immediacy and a main processing device integrally with each other, thus resulting in a limitation on the apparatus arrangement.
The present invention has been made in view of the above conventional problems. It is an object of the present invention to provide a substrate transfer controlling apparatus and a substrate transferring method which can easily maximize the throughput of a substrate processing apparatus such as a semiconductor fabrication apparatus, and can satisfy a demand for immediacy of actions of a transfer device. It is also an object of the present invention to provide a substrate processing apparatus which incorporates such a substrate transfer controlling apparatus.
In order to solve the problems of the conventional substrate transfer controlling apparatus, according to an aspect of the present invention, there is provided a substrate transferring method of transferring substrates with a transfer device between a plurality of processing devices installed in a substrate processing apparatus, the substrate transferring method characterized by comprising: calculating execution times of actions of the transfer device for allowing the time when a final one of the substrates to be processed is fully processed and returned from the substrate processing apparatus to be earliest, based on a predetermined conditional formula including, as parameters, times required for the actions of the transfer device and times required to process the substrates in the processing devices; and instructing the corresponding transfer device to perform the actions at the calculated execution times of the actions of the transfer device.
According to a preferred aspect of the present invention, in the above method, the execution times of the actions of the transfer device are calculated according to a linear programming process.
According to a preferred aspect of the present invention, the substrate transferring method further comprises: determining whether or not a solution of the execution times of the actions of the transfer device is obtained based on the conditional formula; and when it is determined that a solution of the execution times is not obtained, correcting the conditional formula so as to reduce the average number of substrates which are simultaneously present in the substrate processing apparatus, and retrying calculating the execution times based on the corrected conditional formula.
With the above method, since the execution times of actions of the transfer device can be scheduled so that the time when a final one of the substrates to be processed is fully processed and returned from the substrate processing apparatus is made earliest, the throughput of the substrate processing apparatus can be maximized.
The time when a final one of the substrates to be processed is fully processed and returned from the substrate processing apparatus can be made earliest while satisfying constraints set in relation to the action times of the transfer device without the need for an awkward advance review and limitations on expected processing times. Therefore, requirements for the processing of substrates can be met, and the throughput of the substrate processing apparatus can be maximized.
According to a preferred aspect of the present invention, the substrate transferring method further comprises: determining whether or not it is necessary to newly calculate execution times of actions of the transfer device after the substrate processing apparatus has started to operate; when it is determined that it is necessary to newly calculate execution times of actions of the transfer device, determining an assumed time and a final substrate to be processed in calculating the execution times; and while holding the result of a past scheduling process prior to the determined assumed time, calculating new execution times of actions for substrates up to the determined final substrate.
With the above method, even in a situation where the expected processing times of substrates while the substrate processing apparatus is in continuous operation can sequentially be obtained in divided forms, the throughput can approximately be maximized while satisfying limitations on the processing of substrates.
Because the number of additional substrates to be scheduled can be presumed in view of a calculable number of substrates in each scheduling attempt, a computer of relatively low processing capability can perform a scheduling process.
According to a preferred aspect of the present invention, the substrate transferring method further comprises: acquiring times when the transfer device start the actions thereof; determining whether or not the acquired times and the execution times in the result of the past scheduling process are inconsistent with each other or differ from each other by at least a predetermined range; and when it is determined that the acquired times and the execution times in the result of the past scheduling process are inconsistent with each other or differ from each other by at least the predetermined range, correcting the execution times of the actions of the transfer device which are not performed at that time.
With the above method, even if actions of a transfer device or the processing of substrates in processing devices is delayed behind expected times, it is possible to minimize any effects of the delay on limitations on the processing of substrates and the throughput, and the substrate processing apparatus can be operated without allowing such effects to remain in the future.
According to a preferred aspect of the present invention, the substrate transferring method further comprises: detecting a change in conditions with respect to a substrate expected to be introduced into the substrate processing apparatus after the substrate processing apparatus has started to operate; and when a change in conditions with respect to the substrate is detected, correcting the execution times of the actions of the transfer device on the substrate for which a condition is changed and substrates subsequent to the substrate for which a condition is changed.
With the above method, even if there is a change in conditions with respect to an unintroduced substrate, e.g., a cancellation of the processing of the substrate, a change in the expected processing time of the substrate, or a change in the sequence of introduction of the substrate into the substrate processing apparatus, the substrate processing apparatus can be operated flexibly based on the change in the conditions.
According to a preferred aspect of the present invention, in the above method, when the process of at least one processing device in the substrate processing apparatus with respect to at least one substrate is omitted, the execution times of the actions of the transfer device are calculated so as to transfer the at least one substrate to skip the at least one processing device.
With the above method, since a substrate can be transferred to skip an unwanted processing device type or types while the substrate processing apparatus is being continuously operated, a plurality of processing device types can selectively be used depending on the purpose of processes performed thereby. Therefore, the throughput of the substrate processing apparatus can greatly be increased, and the substrate processing apparatus can be operated flexibly for multi-product small-lot production.
According to another aspect of the present invention, there is provided a substrate transfer controlling apparatus for controlling transfer of substrates with a transfer device between a plurality of processing devices installed in a substrate processing apparatus, the substrate transfer controlling apparatus characterized by comprising: an input device for inputting times required for actions of the transfer device and times required to process substrates in the processing devices; a schedule calculator for calculating execution times of actions of the transfer device for allowing the time when a final one of the substrates to be processed is fully processed and returned from the substrate processing apparatus to be earliest, based on a predetermined conditional formula including, as parameters, the times inputted with the input device; and an action commander for instructing the corresponding transfer device to perform the actions at the execution times of the actions of the transfer device which are calculated by the schedule calculator.
According to a preferred aspect of the present invention, in the above apparatus, the schedule calculator calculates the execution times of the actions of the transfer device according to a linear programming process.
According to a preferred aspect of the present invention, the substrate transfer controlling apparatus further comprises: a solution judging unit for determining whether or not a solution of the execution times of the actions of the transfer device is obtained by the schedule calculator; and a retrying unit for, when it is determined by the solution judging unit that a solution of the execution times is not obtained, correcting the conditional formula so as to reduce the average number of substrates which are simultaneously present in the substrate processing apparatus, and retrying calculating the execution times by the schedule calculator.
According to a preferred aspect of the present invention, the substrate transfer controlling apparatus further comprises: a schedule judging unit for determining whether or not it is necessary to newly calculate execution times of actions of the transfer device by the schedule calculator after the substrate processing apparatus has started to operate; and a calculating condition determiner for, when it is determined by the schedule judging unit that it is necessary to newly calculate execution times of actions of the transfer device, determining an assumed time and a final substrate to be processed in calculating the execution times by the schedule calculator; wherein the schedule calculator calculates new execution times of actions for substrates up to the final substrate determined by the calculating condition determiner while holding the result of a past scheduling process prior to the assumed time determined by the calculating condition determiner.
According to a preferred aspect of the present invention, the substrate transfer controlling apparatus further comprises: an actual time acquisition unit for acquiring times when the transfer device start the actions thereof; a rescheduling judging unit for determining whether or not the times acquired by the actual time acquisition unit and the execution times in the result of the past scheduling process are inconsistent with each other or differ from each other by at least a predetermined range; and a corrector for, when it is determined by the rescheduling judging unit that the acquired times and the execution times in the result of the past scheduling process are inconsistent with each other or differ from each other by at least the predetermined range, correcting the execution times of the actions of the transfer device which are not performed at that time.
According to a preferred aspect of the present invention, the substrate transfer controlling apparatus further comprises: a condition change detector for detecting a change in conditions with respect to a substrate expected to be introduced into the substrate processing apparatus after the substrate processing apparatus has started to operate; and a corrector for, when a change in conditions with respect to the substrate is detected by the condition change detector, correcting the execution times of the actions of the transfer device on the substrate for which a condition is changed and substrates subsequent to the substrate for which a condition is changed.
According to a preferred aspect of the present invention, in the above apparatus, when the process of at least one processing device in the substrate processing apparatus with respect to at least one substrate is omitted, the schedule calculator calculates the execution times of the actions of the transfer device so as to transfer the at least one substrate to skip the at least one processing device.
According to still another aspect of the present invention, there is provided a substrate processing apparatus having a plurality of processing devices for processing substrates while transferring the substrates with a transfer device between the processing devices, the substrate processing apparatus characterized by comprising the above substrate transfer controlling apparatus.